home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Essential Home & Business Collection
/
The Essential Home & Business Collection.iso
/
23
/
1
/
6
/
EXE2COM.DOC
< prev
next >
Wrap
Text File
|
1987-04-17
|
5KB
|
137 lines
EXE2COM 1.00
By Chris Dunford/Cove Software
Purpose
-------
EXE2COM is a one-for-one replacement for the EXE2BIN program
that was formerly distributed with DOS. Beginning with DOS 3.3,
EXE2BIN has been moved to the disk that comes with the DOS
Technical Reference and thus is not available without extra
cost.
Usage
-----
Usage is identical to DOS's EXE2BIN except that the output file
extension defaults to COM rather than BIN (when was the last
time you saw a BIN file?).
Complete usage is:
EXE2COM [d:][path]file[ext] [d:][path][file][ext]
The drive and path of the first file default to the current
drive and path, if not specified. The extension of the first
file defaults to EXE, if not specified.
If the second file is completely unspecified, it defaults to the
same drive, path, and filename as the first, except that the
extension will be COM.
If the second file is specified but without an extension, COM
will be assumed (this is different from EXE2BIN).
The simplest (and usual) usage is simply:
EXE2COM file
which will take the named EXE file in the current directory and
convert it to a COM file in the same directory.
Operation
---------
EXE2COM runs the same way as EXE2BIN, with the following
exceptions:
1. The binary fixup option of EXE2BIN (IP=0, segment fixups
required) is not supported.
2. The EXE file checksum is not verified.
3. Error messages are more useful, and a warning is provided
if a COM file is created with an initial IP other than 100H.
Error Messages
--------------
These are EXE2COM's error messages. If one of these is seen,
the EXE file will not be converted and the errorlevel returned
by EXE2COM will be 1.
ERROR READING EXE HEADER
EXE2COM was unable to read the EXE file header from disk.
ERROR WRITING OUTPUT FILE
EXE2COM was unable to write the converted file to disk.
INVALID EXE FILE SIGNATURE
The first two bytes of an EXE file should be ASCII 'M' and
'Z'. This was not the case, and it's probably not an EXE
file.
EXE HAS RELOCATABLE ITEMS
In order to be converted to a COM file, an EXE file cannot
have any direct references to segments. For example, the
assembler instruction "mov ax,code" (where CODE is a segment
name) is a segment reference. One or more segment
references were found in the EXE file.
EXE HAS STACK SEGMENT
In order to be converted to a COM file, an EXE file cannot
have a stack segment.
EXE HAS NONZERO CS
In order to be converted to a COM file, an EXE file must
have a code segment that begins at offset 0 of the code
image in the EXE file.
IP NOT 0 OR 100H
In order to be converted to a binary file, an EXE file must
have an entry point of 0 or 100H within the code segment.
For COM files, the entry point should be 100H. For SYS
files (device drivers), the entry point should be 0.
PROGRAM EXCEEDS 64K
In order to be converted to a binary file, the total size of
the code to be loaded (including the PSP) must not exceed
64K bytes.
UNKNOWN ERROR
Internal error. Notify the author.
Warning message
---------------
EXE2COM has one warning message:
COM FILE, INITIAL IP NOT 100H
The entry point of all COM files should be 100H. If you are
creating a COM file an the entry point is not 100H, EXE2COM will
do the job but let you know that there is a potential problem.
Source
------
Source code should be included with this archive. Users are
encouraged to modify, improve, and/or correct the source for
EXE2COM and submit the new program to the author for
distribution.
The original EXE2COM executable file (date 4/17/87) was produced
using the provided source, except that the printf's were
replaced by a function from the author's library that produces
smaller EXE files.
Public domain
-------------
EXE2COM is hereby donated by the author to the public domain.
The program should not be sold at any cost by any for-profit
organization.
Author: Christopher J. Dunford
The Cove Software Group
PO Box 1072
Columbia, MD 21044
(301) 992-9371
CompuServe 76703,2002